import pyttsx3

def text_to_speech(text):
    """
    将输入文本转换为语音朗读
    参数:
        text (str): 需要朗读的文本（支持中英文混合）
    """
    # 初始化TTS引擎
    engine = pyttsx3.init()
    
    try:
        # 设置语音属性（可选）
        voices = engine.getProperty('voices')
        
        # 自动选择中文语音（如果存在）
        selected_voice = None
        for voice in voices:
            if 'chinese' in voice.languages or 'zh' in voice.languages:
                selected_voice = voice
                break
        
        if selected_voice:
            engine.setProperty('voice', selected_voice.id)
        else:
            print("警告：未找到中文语音库，将使用默认语音")
        
        # 设置朗读速率（默认200，范围50-500）
        engine.setProperty('rate', 180)  # 可根据需要调整
        
        # 设置音量（0.0-1.0）
        engine.setProperty('volume', 0.9)  # 可根据需要调整
        
        # 朗读文本
        engine.say(text)
        engine.runAndWait()
        
    except Exception as e:
        print(f"朗读时发生错误: {str(e)}")

# 使用示例
#if __name__ == "__main__":
    # 中文示例
    #text_to_speech("你好，这是一个文本转语音的示例。")
    
    # 英文示例
    #text_to_speech("Hello, this is a text-to-speech example.")
    
    # 中英文混合示例
    #text_to_speech("今天天气真好，The weather is really nice today.")